package com.cskaoyan.service.promotion;

import com.cskaoyan.bean.promotion.Coupon;
import com.cskaoyan.bo.promotion.WxCouponReceiveBo;
import com.cskaoyan.vo.promotion.*;

import java.util.List;

/**
 * @description:
 * @autyor:caicaicai
 */
public interface CouponService {

    CouponListVo query(Integer page, Integer limit, String sort, String order, String name, Short type, Short status);

    /*int update(CouponUpdateBo couponUpdateBo);*/
    int update(Coupon coupon);

    int delete(Coupon coupon);

    Coupon read(Integer id);

    CouponListuserVo listuser(Integer page, Integer limit, Integer couponId, String sort, String order, Integer userId, Short status);

    Coupon create(Coupon coupon);

    WxCouponListVo queryWx(Integer page, Integer size);

    WxCouponMylistVo queryMylistWx(Integer userId, Integer page, Integer size, Short status);

    List<WxCouponMylistCouponVo> selectListWx(Integer userId, Integer cartId, Integer grouponRulesId);

    int receiveWx(Integer userId, WxCouponReceiveBo receiveBo);

    int exchange(Integer userId, String code);
}
